#!/bin/sh

# Reset the Internal Field Separator
resetIFS() {
	IFS='	 
'
}

# Check if a string is in a list of space-separated string
#
# Arguments:
# $1: the string to be checked
# $2: the string list
#
# Return:
# 0 (true): if the string is in the list
# 1 (false): if the string is not in the list
stringInList() {
	resetIFS
	for stringInList_listItem in $2; do
		if test "$1" = "$stringInList_listItem"; then
			return 0
		fi
	done
	return 1
}

# Return the strings that are present in two space-separated strings
#
# Arguments:
# $1: the first space-separated string
# $2: the first second-separated string
#
# Output:
# The space-separated list of strings that are present in both lists
commonElements() {
	commonElements_result=''
	resetIFS
	for commonElements_inA in $1; do
		if stringInList "$commonElements_inA" "$2"; then
			if test -z "$commonElements_result"; then
				commonElements_result="$commonElements_inA"
			else
				commonElements_result="$commonElements_result $commonElements_inA"
			fi
		fi
	done
	echo "$commonElements_result"
}
